package com.vipymh.springbootmybatisdemo.pojo;

import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Data;

import java.time.LocalDateTime;

// lombok 在编译阶段，为实体类自动生成setter  getter toString
// pom文件里引入依赖，在实体类上添加注解
@Data
public class User {
    @NotNull
    private Integer id; // 主键ID
    private String username; // 用户名
    @JsonIgnore  // 让springmvc把当前对象转换成Json字符串的时候，忽略password，最终Json字符串中没有password属性
    private String password; // 密码

    @NotEmpty
    @Pattern(regexp = "^\\S{1,10}$")
    private String nickname; // 称昵

    @NotEmpty
    @Email
    private String email; // 邮箱
    private String userPic; // 用户头像地址
    private LocalDateTime createTime; // 创建时间
    private LocalDateTime updateTime; // 更新时间
}
